/**
 * 
 */
package com.ihg.hiex.entity.session.before.delegatework;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.ihg.hiex.entity.user.Delegate;

/**
 * @author houtao
 *
 */
@Entity
@Table(name = "delegate_self_reflection")
public class DelegateSelfReflection {
    
    @Id
    @GeneratedValue
    private Long id;
    
    @JsonIgnore
    @ManyToOne(fetch = FetchType.LAZY, optional = false)
    private Delegate delegate;
    
    /** 第一个优势  */
    private String advantageOne;
    
    /** 第二个优势   */
    private String advantageTwo;
    
    /** 第三个优势   */
    private String advantageThree;
    
    /** 第一个领域   */
    private String fieldOne;
    
    /** 第二个领域   */
    private String fieldTwo;
    
    /** 第三个领域   */
    private String fieldThree;
    
    /** 第一个被喜欢的点   */
    private String likedOne;
    
    /** 第二个被喜欢的点   */
    private String likedTwo;
    
    /** 第三个被喜欢的点   */
    private String likedThree;
    
    /** 第一个改变   */
    private String changeOne;
    
    /** 第二个改变   */
    private String changeTwo;
    
    /** 第三个改变   */
    private String changeThree;
    
    /** 是否启用 */
    @Column(name = "is_disabled")
    private boolean disabled;

	/**
	 * the default constructor.
	 */
	public DelegateSelfReflection() {
	}
	
	/**
	 * 
	 * @param delegate
	 * @return
	 */
	public DelegateSelfReflection init(Delegate delegate) {
		this.delegate = delegate;
		this.disabled = false;
		return this;
	}

	/**
	 * @return the id
	 */
	public Long getId() {
		return id;
	}

	/**
	 * @return the delegate
	 */
	public Delegate getDelegate() {
		return delegate;
	}

	/**
	 * @return the advantageOne
	 */
	public String getAdvantageOne() {
		return advantageOne;
	}

	/**
	 * @return the advantageTwo
	 */
	public String getAdvantageTwo() {
		return advantageTwo;
	}

	/**
	 * @return the advantageThree
	 */
	public String getAdvantageThree() {
		return advantageThree;
	}

	/**
	 * @return the fieldOne
	 */
	public String getFieldOne() {
		return fieldOne;
	}

	/**
	 * @return the fieldTwo
	 */
	public String getFieldTwo() {
		return fieldTwo;
	}

	/**
	 * @return the fieldThree
	 */
	public String getFieldThree() {
		return fieldThree;
	}

	/**
	 * @return the likedOne
	 */
	public String getLikedOne() {
		return likedOne;
	}

	/**
	 * @return the likedTwo
	 */
	public String getLikedTwo() {
		return likedTwo;
	}

	/**
	 * @return the likedThree
	 */
	public String getLikedThree() {
		return likedThree;
	}

	/**
	 * @return the changeOne
	 */
	public String getChangeOne() {
		return changeOne;
	}

	/**
	 * @return the changeTwo
	 */
	public String getChangeTwo() {
		return changeTwo;
	}

	/**
	 * @return the changeThree
	 */
	public String getChangeThree() {
		return changeThree;
	}

	/**
	 * @return the disabled
	 */
	public boolean isDisabled() {
		return disabled;
	}

	/**
	 * @param id the id to set
	 */
	public void setId(Long id) {
		this.id = id;
	}

	/**
	 * @param delegate the delegate to set
	 */
	public void setDelegate(Delegate delegate) {
		this.delegate = delegate;
	}

	/**
	 * @param advantageOne the advantageOne to set
	 */
	public void setAdvantageOne(String advantageOne) {
		this.advantageOne = advantageOne;
	}

	/**
	 * @param advantageTwo the advantageTwo to set
	 */
	public void setAdvantageTwo(String advantageTwo) {
		this.advantageTwo = advantageTwo;
	}

	/**
	 * @param advantageThree the advantageThree to set
	 */
	public void setAdvantageThree(String advantageThree) {
		this.advantageThree = advantageThree;
	}

	/**
	 * @param fieldOne the fieldOne to set
	 */
	public void setFieldOne(String fieldOne) {
		this.fieldOne = fieldOne;
	}

	/**
	 * @param fieldTwo the fieldTwo to set
	 */
	public void setFieldTwo(String fieldTwo) {
		this.fieldTwo = fieldTwo;
	}

	/**
	 * @param fieldThree the fieldThree to set
	 */
	public void setFieldThree(String fieldThree) {
		this.fieldThree = fieldThree;
	}

	/**
	 * @param likedOne the likedOne to set
	 */
	public void setLikedOne(String likedOne) {
		this.likedOne = likedOne;
	}

	/**
	 * @param likedTwo the likedTwo to set
	 */
	public void setLikedTwo(String likedTwo) {
		this.likedTwo = likedTwo;
	}

	/**
	 * @param likedThree the likedThree to set
	 */
	public void setLikedThree(String likedThree) {
		this.likedThree = likedThree;
	}

	/**
	 * @param changeOne the changeOne to set
	 */
	public void setChangeOne(String changeOne) {
		this.changeOne = changeOne;
	}

	/**
	 * @param changeTwo the changeTwo to set
	 */
	public void setChangeTwo(String changeTwo) {
		this.changeTwo = changeTwo;
	}

	/**
	 * @param changeThree the changeThree to set
	 */
	public void setChangeThree(String changeThree) {
		this.changeThree = changeThree;
	}

	/**
	 * @param disabled the disabled to set
	 */
	public void setDisabled(boolean disabled) {
		this.disabled = disabled;
	}
}
